package edu.westga.cs.recommender.interfaces;

import java.util.LinkedList;

import edu.westga.cs.recommender.model.datatypes.Item;

/**
 * Provides a limited interface to the RetrieveInfo class to only access methods relevant
 * to retrieving matching items based on given tags.
 * @author Brent W. Ezell
 *
 */
public interface RetrieveItemMatches {
	//Methods
	/**
	 * Retrieves the items associated with a given tag.
	 * @param tag A string containing the tag to search on.
	 * @return A LinkedList<String> containing the names of items matching the given tag.
	 */
	public LinkedList<String> retrieveMatchingItemNames(String tag);
	
	/**
	 * Retrieves the item data for a given item name.
	 * @param name The name of the item to retrieve information on.
	 * @return An Item containing the information on the item.
	 */
	public Item retrieveItem(String name);
}
